Multi-streaming Solid State Drives (SSDs) allow smart placement of incoming data to minimize the effect of internal Garbage Collection (GC) and reduce write amplification. Multi-streaming is achieved by adding a simple tag (stream ID) to each write request. Based on this tag, the SSD may group data into common erase blocks. To make use of multi-stream, data within the same stream should have at least one common attribute, for example, data life cycle.
But SSDs in general, and multi-streaming SSDs in particular, do not directly support Quality of Service (QoS) attributes. It is up to the host computer to provide support for any QoS attributes of streams and the software that generate stream requests.
A need remains for a way to improve the performance of multi-streaming devices to satisfy QoS attributes.